形狀/紋理識別雙管齊下 二維碼讀取性能大有進展
二維(2D)碼的應用正日益普及,這是因為二維碼能夠對大量資料進行編碼,進而實現物件的追蹤。然而,二維碼的成功讀取,須靠完好無損的定位圖案和時鐘圖案。若這些基本元素受損或變得模糊,讀碼器將無法準確識讀。
當代碼標籤受損、靜音區被干擾、重要圖形元素缺失或影像對比度不足等情形發生時,基於視覺的讀碼器也可能無法讀取DataMatrix碼。而「無法讀取」可能會影響自動化製造和物流業務的效率和產能。此外,「誤讀」也可能會導致合格產品被剔除製造流程、退貨及其他影響企業利潤和客戶關係的責任。
目前,康耐視藉由PowerGrid技術已成功克服了這一局限。這項正在申請專利的二維碼讀取演算法,將紋理資料與幾何資料結合起來,能夠在各種工業應用中,實現最高的DataMatrix碼讀取率,可對汽車、電子產品、醫藥供應鏈和物流業應用帶來許多幫助。
在討論基於形狀和紋理的演算法如何能互相支援,從而提高條碼讀取率之前,本文將先從二維碼的組成元素、優勢和應用挑戰談起。
從一維碼轉向二維碼
代碼是一種機器可讀的資料表示形式,通常印製在產品或包裝上,或者永久性標記在產品或物品表面。代碼一般都可以讀取,通常用於識別目的,或者用於在產品的整個生命週期內追蹤產品。
目前,代碼已發展出數十種形式(圖1),包括由一組平行線條組成的一維(1D)條碼,如GS1,EAN,Code 128碼等;由點和方格構成矩陣的二維碼,如DataMatrix碼、Aztec碼、QR碼等。比一維條碼更為先進的二維碼可以儲存和檢索更大量的資料。這是因為一維條碼只能在水平方向上存儲資料,而二維碼則可以在垂直和水平兩個方向上存儲資料。
![]() |
| 圖1 不同類別的一維條碼和二維碼 |
DataMatrix碼由於具有儲存容量顯著增加,並內建誤差糾正功能等優勢,再加上其他考量因素,如今已經成為製造業約定俗成的標準。在儲存容量部分,如圖2所示,大小為24×24的DataMatrix碼,可以容納52個字母與數字字元,大小為48×48的DataMatrix碼則可以容納259個字元。目前最大型的DataMatrix碼可以容納2,335個字元。
![]() |
| 圖2 不同尺寸的DataMatrix碼可以容納不同的字元資料量。 |
一維條碼最初設計由鐳射掃描器來讀取,其讀取原理如下:鐳射器發射出一束鐳射,然後,光束被引導到一個旋轉稜鏡,由該稜鏡將光束投射到整個條碼上(圖3),接著,一個感測器將會採集反射率,並依照黑色條與白色條之間的反射率差異讀取條碼。雖然這種方法傳統上速度很快,而且成本低廉,但隨著時間的推移,機械組件可能會損壞,而且,操作員必須將鐳射掃描器以適當的角度對準條碼,有時可能還需要使用額外的夾具,才能實現理想的讀取率。
![]() |
| 圖3 基於鐳射的掃瞄器 |
![]() |
| 圖4 基於視覺的讀碼器 |
不同於一維條碼僅包含誤差檢測功能,所有二維碼都提升了資料完整性,進一步減少無法讀取的情形。儲存容量與可靠性的互補優勢,是二維碼成為製造應用首選代碼類別的原因所在。
二維碼須使用基於視覺的讀碼器來讀取,其讀取原理如下:首先,數位攝影機採集二維碼的圖像,然後,執行特殊影像處理軟體的微處理器將定位並解碼圖像中的二維碼,最後將所產生的資料傳送到整個網路。基於視覺的讀碼器無活動組件,這使得這類讀取器對工業應用而言,更加堅固耐用。
二維符號架構穩定 不受雜亂因素干擾
一維條碼內含用於識別條碼起始和終止位置的靜音區和防護圖案,DataMatrix碼由靜音區(或稱空白區)、定位圖案(或稱「L」圖案)、時鐘圖案及數據區四個區塊構成,如圖5。
![]() |
| 圖5 二維DataMatrix碼的組成元素 |
靜音區圍繞在整個代碼周遭,用於識別代碼的起始和終止位置,以確保讀碼器不會採集到任何與代碼無關的訊息。DataMatrix碼的定位圖案是一個L形狀的圖案,位於代碼兩側的外邊緣周遭,該圖案用於確保解碼過程中方向的正確性。定位圖案的對面是時鐘圖案,時鐘圖案由一系列交替出現的黑色模組和白色模組組成,用於定義單個儲存格的大小和代碼的大小(行數和欄數)。
靜音區、定位圖案和時鐘圖案組合起來,在資料區周遭形成了一個正方形。因此,視覺讀碼器只要採用基於形狀的演算法,就能夠定位出資料區。
當二維碼是圖像中的唯一物品時,讀碼器可以輕鬆將其識別出來。然而,當二維碼位於其他大小和形狀相似的圖形或圖示旁邊時,讀碼器將比較難以將其隔離開來,並正確判讀其資訊。
在這種情形下,基於紋理的分析方法,將有助於基於視覺的讀碼器迅速識別並讀取二維碼,不會受到圖像中任何雜亂因素的干擾。二維碼的另一個優勢在於誤差糾正功能。許多二維碼都採用裡德-所羅門(Reed-Solomon)誤差糾正技術,這與DVD播放機採用的技術相同。有了這種技術,即使光碟表面出現了刮痕,DVD播放機也能夠讀取資料。
因此,不同於一維條碼僅可檢測到資料缺失或錯誤,若檢測到二維碼裡面足夠數量的模組,二維碼還能夠糾正缺失或錯誤資料。
當選擇機器可讀代碼的應用方法時,很重要的一點是必須考量可用空間、紋理和永久性等因素。要將代碼應用到物品上,通常可以採用以下兩種方法來完成:
一種是將代碼印在在包裝或標籤上(通常使用噴墨印製或熱轉印方法,圖6),另一種是透過直接部件標識(DPM,圖7)方法,如打點,化學蝕刻或鐳射標記,將代碼永久性地標記在組件上。若使用者選擇將代碼印製到包裝、標籤或其他材質上,使用標準熱轉印或噴墨印表機進行印製都是非常經濟實惠的方法。
![]() |
| 圖6 印製代碼示例 |
![]() |
| 圖7 DPM碼示例 |
然而,標籤須要使用機械或人工來張貼,這會導致成本增加,並且可能會引起代碼張貼錯誤或受損。而且,隨著時間的推移,熱轉印和噴墨頭等部件可能會磨損或堵塞,導致其所印刷出的代碼品質下降。
多重因素促成二維碼普及 然疑難雜症層出不窮
多重因素促成二維碼普及 然疑難雜症層出不窮
新一代讀碼器可幫助客戶消除產品假冒問題,確保符合監管法規醫藥製造廠商及其包裝承包合作夥伴需要在從原材質直至成品的整個生產流程中追蹤輸出。必須這樣做的主要原因之一在於,防止欺詐性產品進入供應鏈,因為這可能會引起致命的後果。
世界各地的政府最新頒布的各種監管法規,也要求這些公司開始追蹤他們的產品,直至最後一個包裝單元。正因為如此,很重要的一點是必須能夠全程識別產品,涵蓋從生產到包裝,包括單個包裝,組合包裝和堆積,直至最終用戶的整個過程。這可以透過在每個階段讀取產品上的二維碼來實現。
在嘗試讀取代碼的過程中,可能會出現各種問題。代碼是否印製得太靠近包裝邊緣,導致定位圖案或時鐘圖案遺失,或靜音區出現干擾?代碼是否被貨盤上的包裝材質遮住了一部分,或代碼是否被外層透明包裝材質遮住了一部分?這些常見的情形都很棘手,但若使用PowerGrid技術,則可以顯著提高讀取率,因為這種技術可以讓用戶能夠讀取100%的代碼。這樣就可以在這些非常敏感產品的整個供應鏈上對它們進行精確的追蹤。
以汽車業為例,這個產業的生產過程全程導入二維碼已經有一段時日。汽車組件從在鑄造廠生產出來到最終裝配完畢,汽車製造商及其供應商通常會全程使用二維碼來識別所使用的部件。若無法讀取這些代碼(其中一些代碼非常難以讀取),則可能會導致交貨延誤、材料廢棄和產品退回。對汽車製造廠商及其供應廠商而言,這可能會是一個代價高昂的錯誤。
事實上,在汽車組裝生產線上,標識與讀碼器之間的相對位置並非始終保持不變。這意味著在汽車組件裝配過程中,只要有很小的偏差出現就可能會導致代碼的一部分被遮住。隨著時間的推移,組件搬運也會導致標識品質下降。另外,組件標識還可能標記在各種不夠標準的表面上,包括鏡面反射、高反光、凹凸不平、圓形等表面。這會導致傳統讀碼器難以甚至無法讀取二維碼。
PowerGrid技術可以讓用戶能夠讀取這些棘手的代碼。舉例來說,活塞組件供應廠商使用鐳射將二維碼標示標記到組件的一面。該組件表面是圓形的,而且不平整,二維碼標示的位置也可能會略有行動。當該組件進入引擎裝配車間後,必須首先識別組件(透過讀取二維碼)才能使用。任何無法讀取的標示都可能會導致各種問題。PowerGrid技術可以讓用戶放心,即使是由於搬運或標記方法不佳而受損嚴重的代碼,讀碼器也能夠讀取,從而可以減少生產線出現停止執行,材材廢棄和代價高昂的停機的可能性。
標記方法各有優缺點
在許多應用中,如醫療裝置、印製電路板和汽車部件等,部件的可追溯性和責任保障非常重要。比起印製,DPM標記方法(如鐳射和打點標記)可以提供更持久的標示。這些應用通常需要對更多訊息進行編碼,如原產國、製造廠商、裝置分類和屬性等。因此,這些行業都依靠二維碼來實現更全面的資料儲存,同時確保代碼的完整性。
鐳射標記系統可以將DataMatrix碼或其他二維碼符號標記到組件上。依照不同的表面硬度和鐳射強度,二維碼標識可以透過以下方法來實現:將表面燒焦,以改變表面顏色;對表面進行退火處理,以改變表面反射性;或者進行燒蝕,使表面層蒸發,然後形成一個能夠使用暗視場和明視場照明技術讀取的3D標識(圖8)。
![]() |
| 圖8 鐳射標記代碼示例 |
鐳射可以提供出色的速度和標記品質,但這樣的專業水準需要投入較高的資本成本,還需要進行額外的調整和導入安全措施,以保護工人的安全。
打點標記系統通常被視為最經濟實惠的DPM標記方法,這類系統使用一種振盪觸針在材質表面(通常為金屬表面)留下印記。然而,硬質材質可能會極大地縮短打點針頭的使用壽命,進而導致營運成本增加,並且還可能會引起永久性標識的品質下降。除了標記過程具有挑戰性外,還有一點必須指出的是,點陣式二維碼(圖9)只能使用專門的視覺讀碼器讀取。
![]() |
| 圖9 點陣式二維碼 |
如上所述,每種代碼標記方法都有自己的優勢和劣勢。噴墨印製方法比較經濟實惠,但可能會受到空墨水匣或印製頭堵塞的影響。對於金屬組件,鐳射標記系統可以提供較耐久的標示,但標記的成本比較昂貴。打點標記針頭的成本比較低廉,但針頭容易磨損,可能會影響標示品質。
值得一提的是,基於視覺的代碼讀取系統,除了讀取資料外,也可以用來監控印表機和DPM標記系統所製造出來的標示品質,提醒機器操作員噴墨頭堵塞或標記針頭磨損,這是鐳射掃描器所無法實現的功能。
現有讀碼器仍有改善空間
在零售,製造和物流等行業的現代化追蹤與追蹤應用中,二維碼藉由較小的尺寸,較高的資料存儲容量,資料冗餘和誤差糾正功能等優勢,如今已成為用戶的最佳選擇。
但任何方法都不可能是完美無缺的。印表機可能會由於噴墨頭堵塞而漏印了二維碼的一個線條、電容器可能會妨礙智慧攝影機搜尋印刷電路板上鐳射標記二維碼的定位圖案或時鐘圖案。行銷圖形或圖示可能塞滿醫藥包裝的靜音區周遭。若這些問題影響到代碼的資料區,誤差糾正功能可以進行彌補;而若這些問題影響到代碼的定位圖案或時鐘圖案,則可能會導致無法定位代碼。
在此之前,即使是最先進的二維碼解碼演算法,也僅使用基於形狀的幾何圖案搜尋方法來定位和讀取二維碼。基於視覺的讀碼器使用基於形狀的演算法定位代碼的時鐘圖案和定位圖案,以確定代碼的正確方向和模組大小。基於形狀的演算法使用圖元密度值,將黑色前景模組與白色背景模組區分開來,然後「讀取」所編碼的資料。只要定位了靜音區、定位圖案和時鐘圖案,二維碼讀碼器就能夠讀取代碼,即使代碼存在對比度較低,資料區缺失一個線條,資料區部分被遮住等問題,也能夠讀取。
然而,當空白區、定位圖案或時鐘圖案被遮住或者存在缺陷時,基於形狀的演算法通常無法定位二維碼。在某些情形下,代碼被放置在大小和形狀與DataMatrix碼相似的黑白圖形或圖示旁邊,這在零售領域最常見。雖然代碼沒有被遮住,也不存在缺陷,但這些相似的圖形或圖示可能會大大減慢讀碼器分離和讀取DataMatrix碼的速度。
結合紋路識別 PowerGrid提高讀取可靠性
為解決這一挑戰,康耐視的軟體工程師花費8年時間,開發出了一種更卓越的二維碼讀取方法。PowerGrid技術透過外部特徵定位代碼,將基於形狀的圖案搜尋方法,結合資料區的棋盤格圖案定位代碼,把基於圖案紋理的分析導入到二維條碼讀取過程中。因此,PowerGrid技術能夠迅速定位並讀取DataMatrix碼,而不受令人分心的外部環境或者受損或部分元素遺失的影響。
讀取引擎蓋、印刷電路板(PCB)和50板裝藥品泡罩包裝上的DataMatrix碼,似乎跟非洲大草原上的母獅狩獵過程有些相似。就像斑馬可能被隱藏在草叢中的母獅欺騙而失去警覺一樣,母獅在尋找獵物時,也必須藉由形狀和紋理交叉輔助,來準確判斷獵物的種類,找到最容易得手的目標。
假設有隻母獅隱藏在草叢中,窺伺著一群獵物,並很快鎖定了其中兩隻動物。這兩隻動物都有尾巴,還有形狀相似的頭部和身形輪廓。然而,其中一隻動物是羚羊、另一隻是斑馬。
對母獅來說,羚羊其實是不太好搞定的獵物,羚羊每小時的奔跑速度可達到55英里,而且頭上還長了兩隻角,在掙扎的過程中,羚羊的角可能會刺穿母獅的腹部,留下長達14英吋的傷口。若僅依靠基於形狀的視覺線索,母獅無法輕鬆將斑馬與羚羊區分開來。然而,若把獵物身上的紋理納入分析範圍,母獅則可以迅速將斑馬與羚羊區分開來,不會把羚羊跟斑馬搞混。
PowerGrid技術的運作也是如此,也將這些基於形狀的線索與基於紋理的線索結合起來,來定位部分元素有缺失(如定位圖案)的二維碼。PowerGrid技術將會搜尋整個圖像,並定位聚集在一起,看起來密密麻麻的資料模組紋理。定位這些模組之後,讀取器就能確定模組的大小和DataMatrix碼的整體大小。然後,傳統的二維碼讀取演算法,就可以接著讀取和解碼資料。
即使重要元素缺失或受損,採用了PowerGrid技術的先進二維碼讀取演算法,也能夠正確地讀取二維碼。有了這種技術,讀取器的讀取率將可大幅提高,並實現遠高於當前水準的解碼可靠性。








